//入口函数
$(function () {
    //需求1:点击切换
    $('#loginBox a').on('click', function () {
        //点击登录内的显示注册
        $('#loginBox').hide();
        $('#regBox').show();
    });
    $('#regBox a').on('click', function () {
        //点击登录内的显示注册
        $('#regBox').hide();
        $('#loginBox').show();
    });

    //需求2:自定义校验规则
    let form = layui.form;
    //verify方法 参数是对象类型,属性是校验规则的名称  值有两种类型  函数和数组
    form.verify({

        //属性是校验名称  值使校验规则
        // 值有两种类型  函数和数组
        username: [
            // \w 表示单个字母和数字   \S非空字符串
            //第一个为判断规则   第二个为错误提示
            // /^[a-zA-Z0-9]{1,10}$/,
            /^[\w]{1,10}$/,
            '用户名必须1到10位数字或字母'
        ],
        password: [
            // /^[a-zA-Z0-9]{6,15}$/,
            /^[\S]{6,15}$/,
            '密码长度必须是6-15位的非空字符串'
        ],
        // 自定义重复密码规则
        repassword: function (value) {

            //value是你给那个标签添加的校验规则
            //获取到第一次密码的值
            console.log(value);

            let pwd = $('#regBox input[name=password]').val();
            console.log(pwd);
            //判断是否一致
            if (pwd !== value) {
                //不一致报错
                return '两次密码输入不一致,请重新输入'
            }
        }
    });

    //需求3:注册功能
    $('#formReg').on('submit', function (e) {
        //阻止默认提交
        e.preventDefault();
        //通过axios发送ajax请求
        axios({
            method: 'POST',
            url: '/api/reguser',
            //获取字符串类参数  a=1&b=2&c=3
            data: $(this).serialize(),
        }).then(res => {
            console.log(res.data);
            if (res.data.status !== 0) {
                //  有表情的弹窗
                return layer.msg(res.data.message, { icon: 5 });

            };
            //成功提示
            layer.msg(res.data.message, { icon: 6 });

            //切换到登录区
            $('#regBox a').click();
            //清空注册表单  Dom表单的方法 reset()  清空表单
            $('#formReg')[0].reset();
        });
    });

    //需求4:登录功能
    $('#formLogin').on('submit', function (e) {
        //阻止默认提交
        e.preventDefault();
        //通过axios发送ajax请求
        axios({
            method: 'POST',
            url: '/api/login',
            //获取字符串类参数  a=1&b=2&c=3
            data: $(this).serialize(),
        }).then(res => {
            console.log(res.data);
            if (res.data.status !== 0) {
                //  有表情的弹窗
                return layer.msg(res.data.message, { icon: 5 });

            };
            //成功提示
            layer.msg('恭喜您登录成功', { icon: 6 });

            //切换主页
            location.href = '/index.html';
            //保存token到本地
            localStorage.setItem('token', res.data.token);
        });
    });



































})